<?php
class ProdutosController extends AppController {

	var $name = 'Produtos';

	function cadastrarProduto($id = null, $msg = null) {
		
		if ( !empty($this->data) ) {
			$this->data['Produto']['valor'] = $this->alterarValorMonetario($this->data['Produto']['valor']);
			if ($this->Produto->save($this->data)) {
				( empty($this->data['Produto']['id']) ) ? $msg = 'Produto cadastrado com sucesso!' : $msg = 'Dados alterados com sucesso!';
				$this->redirect(array('action' => 'cadastrarProduto', $this->Produto->id, $msg));
			} else 
				$msg = 'O produto não foi cadastrado.';
		}
		if ($id && empty($this->data)) {
			$this->data = $this->Produto->read(null, $id);
			if ( $this->data['Produto']['ativo'] == '1' )
				$ativo = 'checked';
			else 
				$ativo = '';
		}
		
		if ( empty($this->data['Produto']['ativo']) || $this->data['Produto']['ativo'] == 1)	
			$ativo = 'checked';
		else 
			$ativo = 'checked';
		$this->set(compact('id', 'ativo', 'msg'));
	}
	
	function consultar($msg = null) {
		
		if ( !empty($this->data) ) {
			
			$produto_id = ''; 
			if ( !empty($this->data['Produto']['codigo']) )
				$produto_id = $this->Produto->field('id', array('Produto.id' => $this->data['Produto']['codigo'])); 
			if ( !empty($this->data['Produto']['numeroserie']) )
				$produto_id = $this->Produto->field('id', array('Produto.numeroserie' => $this->data['Produto']['numeroserie']));

			if ( !empty($produto_id) )
				$this->redirect(array('action' => 'cadastrarProduto', $produto_id, $msg));
			else
				$msg = 'Produto não cadastrado. Favor tentar novamente.';
		}
		$this->set(compact('msg'));
	}

	function delete($id = null, $msg = null) {
		if ($id) {
			if ( $this->Session->read('Auth.Usuario.perfilacesso') == 'Administrador' ) {
				if ($this->Produto->delete($id)) {
					$msg = 'Dados apagados com sucesso!';
					$this->redirect(array('action'=>'consultar', $msg));
				} else 
					$msg = 'O Produto não foi excluído.';
			} else 
				$msg = 'Somente o Administrador pode excluir um Produto.';
		}
		$this->redirect(array('action' => 'cadastrarProduto', $id, $msg));
	}
	
	function buscarProduto($id = null) {
		$this->layout = 'ajax';
		
		if ( !empty($id) ) {
			$this->data = $this->Produto->read(null, $id);
			if ( $this->data['Produto']['ativo'] == '1' )
				$ativo = 'checked';
			else 
				$ativo = '';
		} else 
			$this->data = '';
			
		echo json_encode($this->data);
		$this->render(false);
	}
	
	function buscarProdutoPeloNumSerie($num_serie = null) {
		$this->layout = 'ajax';
		
		if ( !empty($num_serie) ) {
			$id = $this->Produto->field('id', array('Produto.numeroserie ilike \'%'.$num_serie.'%\''));
			if ( !empty($id) ) {
				$this->data = $this->Produto->read(null, $id);
				if ( $this->data['Produto']['ativo'] == '1' )
					$ativo = 'checked';
				else 
					$ativo = '';
			} else 
				$this->data = '';
		} else  
			$this->data = '';
			
		echo json_encode($this->data);
		$this->render(false);
	}
	
}
?>